using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Logging;

var builder = WebApplication.CreateBuilder(args);

// 配置日志级别
builder.Logging.ClearProviders();
builder.Logging.AddConsole();
builder.Logging.SetMinimumLevel(LogLevel.Information);

// 添加CORS支持
builder.Services.AddCors(options =>
{
    options.AddDefaultPolicy(policy =>
    {
        policy.AllowAnyOrigin()
              .AllowAnyHeader()
              .AllowAnyMethod();
    });
});

// 添加控制器
builder.Services.AddControllers();

// 添加HttpClient
builder.Services.AddHttpClient();

// 添加配置服务
builder.Services.AddSingleton<IConfiguration>(builder.Configuration);

var app = builder.Build();
var logger = app.Logger;

// 记录启动信息
logger.LogInformation("DeepSeekChatApp 启动中...");

// 使用CORS中间件
logger.LogInformation("配置CORS中间件");
app.UseCors();

// 使用静态文件中间件
logger.LogInformation("配置静态文件服务，目录: wwwroot");
app.UseStaticFiles();

// 配置健康检查端点
app.MapGet("/health", () =>
{
    logger.LogInformation("健康检查请求");
    return Results.Ok(new { status = "healthy", time = DateTime.UtcNow });
});

// 配置控制器路由
logger.LogInformation("配置API路由");
app.MapControllers();

// 配置默认路由，指向index.html
app.MapGet("/", () =>
{
    logger.LogInformation("根路径请求，重定向到index.html");
    return Results.Redirect("/index.html");
});

logger.LogInformation("应用配置完成，开始监听...");
app.Run();